package dto

// GetMonitorInfoResponse 结构体定义
type GetMonitorInfoResponse struct {
	Code    int             `json:"code"`    // 响应码
	Message string          `json:"message"` // 响应消息
	Data    MonitorInfoData `json:"data"`    // 响应数据
}

// MonitorInfoData 包含主机资源数据和金融信息
type MonitorInfoData struct {
	HostInfo           HostInfoData           `json:"host_info"`            // 主机资源信息
	FinanceInfo        FinanceInfoData        `json:"finance_info"`         // 金融信息
	FinanceCommentInfo FinanceCommentInfoData `json:"finance_comment_info"` // 金融评论信息
	HotSearcheInfo     HotSearcheData         `json:"hot_searche_info"`     // 实时热搜信息
}

// HostInfoData 主机资源信息
type HostInfoData struct {
	CPUUsage    string `json:"cpu_usage"`    // CPU 使用率
	MemoryUsage string `json:"memory_usage"` // 内存使用量
	TotalMemory string `json:"total_memory"` // 总内存
	DiskUsage   string `json:"disk_usage"`   // 磁盘使用量
	TotalDisk   string `json:"total_disk"`   // 总磁盘
	Uptime      string `json:"uptime"`       // 主机运行时间
}

// FinanceInfoData 金融信息
type FinanceInfoData struct {
	Metal   map[string]FinanceData `json:"metal"`   // 贵金属信息
	Crypto  map[string]FinanceData `json:"crypto"`  // 加密货币信息
	Stock   map[string]FinanceData `json:"stock"`   // 股票信息
	Fund    map[string]FinanceData `json:"fund"`    // 基金信息
	Bond    map[string]FinanceData `json:"bond"`    // 债券信息
	Futures map[string]FinanceData `json:"futures"` // 期货信息
}

// FinanceData 表示金融产品的价格信息
type FinanceData struct {
	OpenPrice      string `json:"open_price"`       // 开盘价
	LastClosePrice string `json:"last_close_price"` // 昨日收盘价
	HighestPrice   string `json:"highest_price"`    // 最高价
	LowestPrice    string `json:"lowest_price"`     // 最低价
	LatestPrice    string `json:"latest_price"`     // 最新价
	PriceChange    string `json:"price_change"`     // 涨跌幅
	PricePercent   string `json:"price_percent"`    // 涨跌幅百分比
}

// FinanceInfoData 金融信息
type FinanceCommentInfoData struct {
	Metal   map[string][]RealTimeCommentData `json:"metal"`   // 贵金属信息
	Crypto  map[string][]RealTimeCommentData `json:"crypto"`  // 加密货币信息
	Stock   map[string][]RealTimeCommentData `json:"stock"`   // 股票信息
	Fund    map[string][]RealTimeCommentData `json:"fund"`    // 基金信息
	Bond    map[string][]RealTimeCommentData `json:"bond"`    // 债券信息
	Futures map[string][]RealTimeCommentData `json:"futures"` // 期货信息
}

// RealTimeCommentData 实时评论信息
type RealTimeCommentData struct {
	User       string `json:"user"`        // 用户
	Province   string `json:"province"`    // 省份
	City       string `json:"city"`        // 城市
	Comment    string `json:"comment"`     // 评论信息
	CreateTime int64  `json:"create_time"` // 创建时间
}

// HotSearcheData 实时热搜信息
type HotSearcheData struct {
	Baidu    []string `json:"baidu"`    // 百度热搜
	Weibo    []string `json:"weibo"`    // 微博热搜
	Bilibili []string `json:"bilibili"` // 哔哩哔哩热搜
}
